- constraint < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > = < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. >
inherit VisitorsRuntime.map
method virtual build_Add : 'd -> 'gmethod virtual build_All : 'd -> 'hmethod virtual build_And : 'd -> 'imethod virtual build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'mmethod virtual build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'omethod virtual build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'pmethod virtual build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'omethod virtual build_Diff : 'd -> 'r -> 's -> 'tmethod virtual build_F : 'd -> 'umethod virtual build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'mmethod virtual build_False : 'd -> 'mmethod virtual build_G : 'd -> 'umethod virtual build_Gt : 'd -> 'vmethod virtual build_Gte : 'd -> 'vmethod virtual build_H : 'd -> 'umethod virtual build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'pmethod virtual build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'mmethod virtual build_IEq : 'd -> 'vmethod virtual build_INEq : 'd -> 'vmethod virtual build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'pmethod virtual build_Iden : 'd -> 'omethod virtual build_Ident : 'd -> 'k -> 'y -> 'omethod virtual build_Iff : 'd -> 'imethod virtual build_Imp : 'd -> 'imethod virtual build_In : 'd -> 'zmethod virtual build_Inter : 'd -> 'r -> 's -> 'tmethod virtual build_Join : 'd -> 'r -> 's -> 'tmethod virtual build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'mmethod virtual build_LProj : 'd -> 'r -> 's -> 'tmethod virtual build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'mmethod virtual build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'mmethod virtual build_Lone : 'd -> 'hmethod virtual build_Lt : 'd -> 'vmethod virtual build_Lte : 'd -> 'vmethod virtual build_Neg : 'd -> 'xmethod virtual build_No : 'd -> 'hmethod virtual build_None_ : 'd -> 'omethod virtual build_Not : 'd -> 'umethod virtual build_NotIn : 'd -> 'zmethod virtual build_Num : 'd -> int -> int -> 'pmethod virtual build_O : 'd -> 'umethod virtual build_One : 'd -> 'hmethod virtual build_Or : 'd -> 'imethod virtual build_Over : 'd -> 'r -> 's -> 'tmethod virtual build_P : 'd -> 'umethod virtual build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'omethod virtual build_Prod : 'd -> 'r -> 's -> 'tmethod virtual build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'mmethod virtual build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'mmethod virtual build_R : 'd -> 'imethod virtual build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'omethod virtual build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'mmethod virtual build_REq : 'd -> 'zmethod virtual build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'omethod virtual build_RLone : 'd -> 'a1method virtual build_RNEq : 'd -> 'zmethod virtual build_RNo : 'd -> 'a1method virtual build_ROne : 'd -> 'a1method virtual build_RProj : 'd -> 'r -> 's -> 'tmethod virtual build_RSome : 'd -> 'a1method virtual build_RTClos : 'd -> 'b1method virtual build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'omethod virtual build_S : 'd -> 'imethod virtual build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1method virtual build_Some_ : 'd -> 'hmethod virtual build_Sub : 'd -> 'gmethod virtual build_TClos : 'd -> 'b1method virtual build_Transpose : 'd -> 'b1method virtual build_True : 'd -> 'mmethod virtual build_U : 'd -> 'imethod virtual build_Union : 'd -> 'r -> 's -> 'tmethod virtual build_Univ : 'd -> 'omethod virtual build_X : 'd -> 'umethod virtual build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'nmethod virtual build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'lmethod virtual build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'wmethod virtual visit_'i : 'd -> 'k -> 'ymethod virtual visit_'v : 'd -> 'j -> 'qmethod visit_Run : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1method visit_t : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1method visit_fml : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'lmethod visit_True : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'mmethod visit_False : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'mmethod visit_Qual : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'mmethod visit_RComp : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'mmethod visit_IComp : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'mmethod visit_LUn : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'mmethod visit_LBin : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'mmethod visit_Quant : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'mmethod visit_Let : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'mmethod visit_FIte : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'mmethod visit_Block : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'mmethod visit_prim_fml : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'mmethod visit_binding : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'nmethod visit_sim_binding : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'nmethod visit_disj : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disjmethod visit_block : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l listmethod visit_All : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'hmethod visit_Some_ : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'hmethod visit_No : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'hmethod visit_One : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'hmethod visit_Lone : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'hmethod visit_quant : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> Libelectrod.Gen_goal.quant -> 'hmethod visit_And : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'imethod visit_Or : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'imethod visit_Imp : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'imethod visit_Iff : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'imethod visit_U : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'imethod visit_R : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'imethod visit_S : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'imethod visit_lbinop : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> Libelectrod.Gen_goal.lbinop -> 'imethod visit_F : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'umethod visit_G : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'umethod visit_Not : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'umethod visit_O : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'umethod visit_X : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'umethod visit_H : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'umethod visit_P : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'umethod visit_lunop : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> Libelectrod.Gen_goal.lunop -> 'umethod visit_In : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'zmethod visit_NotIn : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'zmethod visit_REq : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'zmethod visit_RNEq : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'zmethod visit_comp_op : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> Libelectrod.Gen_goal.comp_op -> 'zmethod visit_IEq : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'vmethod visit_INEq : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'vmethod visit_Lt : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'vmethod visit_Lte : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'vmethod visit_Gt : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'vmethod visit_Gte : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'vmethod visit_icomp_op : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> Libelectrod.Gen_goal.icomp_op -> 'vmethod visit_exp : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'nmethod visit_None_ : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'omethod visit_Univ : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'omethod visit_Iden : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'omethod visit_Ident : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'k -> 'omethod visit_RUn : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'omethod visit_RBin : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'omethod visit_RIte : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'omethod visit_BoxJoin : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'omethod visit_Compr : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'omethod visit_Prime : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'omethod visit_prim_exp : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'omethod visit_ROne : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'a1method visit_RLone : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'a1method visit_RSome : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'a1method visit_RNo : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'a1method visit_rqualify : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> Libelectrod.Gen_goal.rqualify -> 'a1method visit_Transpose : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'b1method visit_TClos : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'b1method visit_RTClos : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'b1method visit_runop : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> Libelectrod.Gen_goal.runop -> 'b1method visit_Union : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'r -> 's -> 'tmethod visit_Inter : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'r -> 's -> 'tmethod visit_Over : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'r -> 's -> 'tmethod visit_LProj : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'r -> 's -> 'tmethod visit_RProj : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'r -> 's -> 'tmethod visit_Prod : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'r -> 's -> 'tmethod visit_Diff : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'r -> 's -> 'tmethod visit_Join : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'r -> 's -> 'tmethod visit_rbinop : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 'tmethod visit_iexp : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'wmethod visit_Num : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> int -> 'pmethod visit_Card : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'pmethod visit_IUn : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'pmethod visit_IBin : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'pmethod visit_prim_iexp : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'pmethod visit_Neg : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'xmethod visit_iunop : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> Libelectrod.Gen_goal.iunop -> 'xmethod visit_Add : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'gmethod visit_Sub : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> 'gmethod visit_ibinop : < build_Add : 'd -> 'g; build_All : 'd -> 'h; build_And : 'd -> 'i; build_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list -> 'm; build_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'n -> 'n list -> 'o; build_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'p; build_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'o; build_Diff : 'd -> 'r -> 's -> 't; build_F : 'd -> 'u; build_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'l -> 'l -> 'm; build_False : 'd -> 'm; build_G : 'd -> 'u; build_Gt : 'd -> 'v; build_Gte : 'd -> 'v; build_H : 'd -> 'u; build_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'g -> 'w -> 'p; build_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w -> 'v -> 'w -> 'm; build_IEq : 'd -> 'v; build_INEq : 'd -> 'v; build_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'x -> 'w -> 'p; build_Iden : 'd -> 'o; build_Ident : 'd -> 'k -> 'y -> 'o; build_Iff : 'd -> 'i; build_Imp : 'd -> 'i; build_In : 'd -> 'z; build_Inter : 'd -> 'r -> 's -> 't; build_Join : 'd -> 'r -> 's -> 't; build_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l -> 'i -> 'l -> 'm; build_LProj : 'd -> 'r -> 's -> 't; build_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'u -> 'l -> 'm; build_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> ('q * 'n) list -> 'l list -> 'm; build_Lone : 'd -> 'h; build_Lt : 'd -> 'v; build_Lte : 'd -> 'v; build_Neg : 'd -> 'x; build_No : 'd -> 'h; build_None_ : 'd -> 'o; build_Not : 'd -> 'u; build_NotIn : 'd -> 'z; build_Num : 'd -> int -> int -> 'p; build_O : 'd -> 'u; build_One : 'd -> 'h; build_Or : 'd -> 'i; build_Over : 'd -> 'r -> 's -> 't; build_P : 'd -> 'u; build_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'o; build_Prod : 'd -> 'r -> 's -> 't; build_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'a1 -> 'n -> 'm; build_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'h -> (Libelectrod.Gen_goal.disj * 'q list * 'n) list -> 'l list -> 'm; build_R : 'd -> 'i; build_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> ('r -> 's -> 't) -> 'n -> 'o; build_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n -> 'z -> 'n -> 'm; build_REq : 'd -> 'z; build_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'l -> 'n -> 'n -> 'o; build_RLone : 'd -> 'a1; build_RNEq : 'd -> 'z; build_RNo : 'd -> 'a1; build_ROne : 'd -> 'a1; build_RProj : 'd -> 'r -> 's -> 't; build_RSome : 'd -> 'a1; build_RTClos : 'd -> 'b1; build_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'b1 -> 'n -> 'o; build_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'l list -> 'c1; build_S : 'd -> 'i; build_Some_ : 'd -> 'h; build_Sub : 'd -> 'g; build_TClos : 'd -> 'b1; build_Transpose : 'd -> 'b1; build_True : 'd -> 'm; build_U : 'd -> 'i; build_Union : 'd -> 'r -> 's -> 't; build_Univ : 'd -> 'o; build_X : 'd -> 'u; build_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o -> Libelectrod.Location.t -> int option -> 'n; build_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm -> Libelectrod.Location.t -> 'l; build_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p -> Libelectrod.Location.t -> 'w; visit_'i : 'd -> 'k -> 'y; visit_'v : 'd -> 'j -> 'q; visit_Add : 'd -> 'g; visit_All : 'd -> 'h; visit_And : 'd -> 'i; visit_Block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_BoxJoin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp list -> 'o; visit_Card : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'p; visit_Compr : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'o; visit_Diff : 'd -> 'r -> 's -> 't; visit_F : 'd -> 'u; visit_FIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_False : 'd -> 'm; visit_G : 'd -> 'u; visit_Gt : 'd -> 'v; visit_Gte : 'd -> 'v; visit_H : 'd -> 'u; visit_IBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.ibinop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_IComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> Libelectrod.Gen_goal.icomp_op -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'm; visit_IEq : 'd -> 'v; visit_INEq : 'd -> 'v; visit_IUn : 'd -> Libelectrod.Gen_goal.iunop -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'p; visit_Iden : 'd -> 'o; visit_Ident : 'd -> 'k -> 'o; visit_Iff : 'd -> 'i; visit_Imp : 'd -> 'i; visit_In : 'd -> 'z; visit_Inter : 'd -> 'r -> 's -> 't; visit_Join : 'd -> 'r -> 's -> 't; visit_LBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> Libelectrod.Gen_goal.lbinop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_LProj : 'd -> 'r -> 's -> 't; visit_LUn : 'd -> Libelectrod.Gen_goal.lunop -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'm; visit_Let : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_Lone : 'd -> 'h; visit_Lt : 'd -> 'v; visit_Lte : 'd -> 'v; visit_Neg : 'd -> 'x; visit_No : 'd -> 'h; visit_None_ : 'd -> 'o; visit_Not : 'd -> 'u; visit_NotIn : 'd -> 'z; visit_Num : 'd -> int -> 'p; visit_O : 'd -> 'u; visit_One : 'd -> 'h; visit_Or : 'd -> 'i; visit_Over : 'd -> 'r -> 's -> 't; visit_P : 'd -> 'u; visit_Prime : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Prod : 'd -> 'r -> 's -> 't; visit_Qual : 'd -> Libelectrod.Gen_goal.rqualify -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_Quant : 'd -> Libelectrod.Gen_goal.quant -> ('j, 'k) Libelectrod.Gen_goal.sim_binding list -> ('j, 'k) Libelectrod.Gen_goal.block -> 'm; visit_R : 'd -> 'i; visit_RBin : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.rbinop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RComp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> Libelectrod.Gen_goal.comp_op -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'm; visit_REq : 'd -> 'z; visit_RIte : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> ('j, 'k) Libelectrod.Gen_goal.exp -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_RLone : 'd -> 'a1; visit_RNEq : 'd -> 'z; visit_RNo : 'd -> 'a1; visit_ROne : 'd -> 'a1; visit_RProj : 'd -> 'r -> 's -> 't; visit_RSome : 'd -> 'a1; visit_RTClos : 'd -> 'b1; visit_RUn : 'd -> Libelectrod.Gen_goal.runop -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'o; visit_Run : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> bool option -> 'c1; visit_S : 'd -> 'i; visit_Some_ : 'd -> 'h; visit_Sub : 'd -> 'g; visit_TClos : 'd -> 'b1; visit_Transpose : 'd -> 'b1; visit_True : 'd -> 'm; visit_U : 'd -> 'i; visit_Union : 'd -> 'r -> 's -> 't; visit_Univ : 'd -> 'o; visit_X : 'd -> 'u; visit_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.binding -> 'q * 'n; visit_block : 'd -> ('j, 'k) Libelectrod.Gen_goal.block -> 'l list; visit_comp_op : 'd -> Libelectrod.Gen_goal.comp_op -> 'z; visit_disj : 'd -> Libelectrod.Gen_goal.disj -> Libelectrod.Gen_goal.disj; visit_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.exp -> 'n; visit_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.fml -> 'l; visit_ibinop : 'd -> Libelectrod.Gen_goal.ibinop -> 'g; visit_icomp_op : 'd -> Libelectrod.Gen_goal.icomp_op -> 'v; visit_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.iexp -> 'w; visit_iunop : 'd -> Libelectrod.Gen_goal.iunop -> 'x; visit_lbinop : 'd -> Libelectrod.Gen_goal.lbinop -> 'i; visit_lunop : 'd -> Libelectrod.Gen_goal.lunop -> 'u; visit_prim_exp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_exp -> 'o; visit_prim_fml : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_fml -> 'm; visit_prim_iexp : 'd -> ('j, 'k) Libelectrod.Gen_goal.prim_iexp -> 'p; visit_quant : 'd -> Libelectrod.Gen_goal.quant -> 'h; visit_rbinop : 'd -> Libelectrod.Gen_goal.rbinop -> 'r -> 's -> 't; visit_rqualify : 'd -> Libelectrod.Gen_goal.rqualify -> 'a1; visit_runop : 'd -> Libelectrod.Gen_goal.runop -> 'b1; visit_sim_binding : 'd -> ('j, 'k) Libelectrod.Gen_goal.sim_binding -> Libelectrod.Gen_goal.disj * 'q list * 'n; visit_t : 'd -> ('j, 'k) Libelectrod.Gen_goal.t -> 'c1; .. > -> 'd -> Libelectrod.Gen_goal.ibinop -> 'g